home *** CD-ROM | disk | FTP | other *** search
-
- /*
- *
- * GDS105 : ドットデ-タの書き込み
- *
- */
-
- #include <stdio.h>
- #include <dos.h>
-
- unsigned int GDS_put_block(unsigned char *data,signed int x1,signed int y1,signed int x2,signed int y2,unsigned char page,unsigned char mode) {
- union REGS inregs, outregs;
- struct SREGS segregs;
- static struct {
- unsigned int offset;
- unsigned int segment;
- unsigned char page;
- unsigned char dust;
- signed int x1;
- signed int y1;
- signed int x2;
- signed int y2;
- } work;
-
- work.offset=(unsigned int)data;
- work.segment=_DS;
- work.page=page;
- work.dust=0;
- work.x1=x1;
- work.y1=y1;
- work.x2=x2;
- work.y2=y2;
- segread(&segregs);
- segregs.ds=_DS;
- inregs.x.di=(unsigned int)&work;
- inregs.h.ah=0x86;
- inregs.h.al=mode;
- int86x(0x92,&inregs,&outregs,&segregs);
- return (unsigned int)outregs.h.ah;
- }